home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / music / patchlib.arc / README < prev   
Internet Message Format  |  1987-08-24  |  5KB

  1. Date: 27 Dec 86 19:39:59 GMT
  2. From: ucsfcgl!pett@ucbvax.Berkeley.EDU  (Eric Pettersen%CGL)
  3. Organization: UCSF Computer Graphics Lab
  4. Subject: Patch Librarians/Generators
  5.  
  6. Due to the response to my query about interest in ST voice librarians/generators
  7. for the Yamaha DX100 and Casio CZ-101 (more than 40 responses), I have decided 
  8. to post to the net.  The three postings which follow contain ARCed versions of 
  9. the executables for each program (one archive = CZ-101, one archive = DX100) 
  10. as well as the combined souce (third archive).  There was a lot of interest in 
  11. the source because many people wanted to attempt conversions to various other 
  12. synthesizers (conversion to other DX series synths should be very easy [thank
  13. you Yamaha!] while CZ conversions will be a bit [read - a lot] tougher. These
  14. programs should work without conversion (although I haven't *tested* them) on
  15. the DX27 and CZ-1000 and CZ-5000 because their patch formats are identical to
  16. one of the above synths.
  17.  
  18. If anyone converts these programs to other synths, or otherwise enhances them,
  19. please post!  Also, if you come up with any great patches, let the net know!
  20. With these programs available generally around the net, it suddenly becomes
  21. extremely easy to distribute patches.  Just write the patches of interest to
  22. disk, upload and uuencode them and post.  Everyone with the program can then
  23. just grab the article, transform it back to file form, load it into the program
  24. and then into the synth (no laborous patch entry!).  Patch files are relatively
  25. short as well.  As a starting point, all the patches my friends and I have come
  26. up with are included in the appropiate archive.  Check them out and use them
  27. if you like them.
  28.  
  29. What these programs do:
  30.  
  31.     --> Store patches so that the ST can send them back and forth to your 
  32.         synth and you can therefore have a large library of patches
  33.         easily available.
  34.  
  35.     --> Allow you to give long descriptive names to your patches.
  36.  
  37.     --> Generate new patches in a semi-random fashion that you can try out
  38.         easily and keep or discard as appropiate.  The parameters that
  39.         control the generation of voices are external to the program
  40.         (in an ASCII control file) and can therefore be altered or 
  41.         fine-tuned as you see fit.
  42.  
  43.     --> Allow you to rearrange the voices in your library into the order
  44.         you desire.
  45.  
  46.     --> Work in any resolution.
  47.  
  48. What these programs don't do:
  49.  
  50.     --> Edit the voice *using the ST*, the (I know, painful) editing
  51.         facilities of the synth must be used. 
  52.  
  53.     --> Store the voices in a hierarchical manner.  This would be good
  54.         in that it would allow a voices of similar function to be
  55.         grouped or accessed together.
  56.  
  57.     --> Use GEM (although they are easy to use and *are* menu driven,
  58.         you'll see -:)).
  59.  
  60. -----
  61. The archives contain:
  62.  
  63.     Archive 1 (PATCHSRC.ARC)
  64.     ------------------------
  65.  
  66.     PATCH.C        Source to both CZPATCH.PRG and DXPATCH.PRG (by using
  67.             #ifdefs)
  68.  
  69.     CONVERT.DOC    Pointers for converting the code for use by other
  70.             synths, as well as some explanations of the functioning
  71.             of various parts of the source code.
  72.  
  73.     CURSES.C    Don't get your hopes up.  This is the sources to the
  74.             routines that I use commonly throughout all my programs.
  75.             Includes a routine to do screen addressing functions
  76.             [scr_func()] and one to get a character string from
  77.             the user, allowing common editing functions [get_str()]
  78.             as well as a few other goodies.
  79.  
  80.     CURSES.H    My handy-dandy do-all include file.  Used particularly
  81.             in conjunction with the above.
  82.  
  83.     COMPILE.DOC    Describes what is necessary for compilation (this is
  84.             Alcyon C code, by the way).
  85.  
  86.     CONVERT.PRG    Utility that converts binary files to ASCII hex and
  87.             vice versa.  Was invaluable when creating the data
  88.             files that CZPATCH.PRG needed due to details of the
  89.             CZ101 MIDI system exclusive implementation.
  90.  
  91.  
  92.     Archive 2 (DXPATCH.ARC)
  93.     -----------------------
  94.  
  95.     DXPATCH.PRG    Executable patch program for the DX100 (which will also
  96.             presumably work with the DX27).
  97.  
  98.     PATCH.DOC    File detailing the operation of the program, as well as
  99.             the contents of the files below.
  100.  
  101.     DX100.DTA    ASCII file containing the parameters controlling random
  102.             voice generation.
  103.  
  104.     DXVOICES.DTA    File containing the actual patches (starts out with the
  105.             ones that I'm distributing).
  106.  
  107.     KEYTAB.DTA    Data file used internally by DXPATCH.PRG .
  108.  
  109.  
  110.     Archive 3 (CZPATCH.ARC)
  111.     -----------------------
  112.  
  113.     CZPATCH.PRG    Executable program.  Should work with CZ-1000 and 5000
  114.             as well as CZ-101.
  115.  
  116.     PATCH.DOC    Same as PATCH.DOC above.  Can be discarded if you are
  117.             keeping both archives.
  118.  
  119.     CZ101.DTA    Similar to DX100.DTA .
  120.  
  121.     CZ101.DOC    File detailing parameters being set by CZ101.DTA.
  122.  
  123.     CZVOICES.DTA    Similar to DXVOICES.DTA .
  124.  
  125.     CZMIDI.DTA    Contains tables (in binary) for converting parameter
  126.             settings to the hex code necessary to transmit to the
  127.             synth [why are these so strange, Casio?].
  128.  
  129.     KEYTAB.DTA    As in archive 2.  One can be discarded if keeping both
  130.             archives.
  131.  
  132. I recommend that you transfer the archives to your ST and then uudecode and
  133. de-ARC.  This seems to be the most reliable method of avoiding errors.  
  134.  
  135. If for some reason you need the source code in clear form (not ARCed, not
  136. uuencoded) E-mail me and I will send you a copy (ucbvax!pett@socrates.ucsf.edu).
  137.  
  138. I will also be trying to upload these onto several bulletin boards [Ataribase,
  139. MIDIworld network (in LA), STrategic Command (in SF), and The Club II (in 
  140. Detroit)].
  141.  
  142.                 Eric Pettersen
  143.                 UCSF Computer Graphics Lab
  144.